package com.binance.mbxgateway.vo.request.order;

import java.util.List;

import com.binance.master.commons.ToString;
import com.google.common.collect.Lists;

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public class DeleteOrderResponse extends ToString {

    /**
     * 
     */
    private static final long serialVersionUID = 1026989391831357243L;

    @ApiModelProperty
    private final List<DelError> errors = Lists.newArrayList();
    @ApiModelProperty
    private final List<DelCorrect> corrects = Lists.newArrayList();

    public DeleteOrderResponse addCorrect(String orderId, String symbol, String msg) {
        DelCorrect correct = new DelCorrect();
        correct.setMsg(msg);
        correct.setOrderId(orderId);
        correct.setSymbol(symbol);
        this.corrects.add(correct);
        return this;
    }

    public DeleteOrderResponse addError(String orderId, String symbol, String msg) {
        DelError error = new DelError();
        error.setMsg(msg);
        error.setOrderId(orderId);
        error.setSymbol(symbol);
        this.errors.add(error);
        return this;
    }


    @Getter
    @Setter
    public static class DelError extends ToString {

        /**
         * 
         */
        private static final long serialVersionUID = -3707090315003652327L;

        @ApiModelProperty
        private String orderId;
        @ApiModelProperty
        private String symbol;
        @ApiModelProperty
        private String msg;
    }


    @Getter
    @Setter
    public static class DelCorrect extends ToString {

        /**
         * 
         */
        private static final long serialVersionUID = -3707090315003652327L;

        @ApiModelProperty
        private String orderId;
        @ApiModelProperty
        private String symbol;
        @ApiModelProperty
        private String msg;

    }
}
